import 'dart:io';

import 'package:flutter/material.dart';
import 'package:flutter/services.dart';
import 'package:get/get.dart';

import 'common/index.dart';

class Global {
  static Future<void> init() async {
    WidgetsFlutterBinding.ensureInitialized();

    setSystemUi();
    Loading();

    // 初始化服务
    await Future.wait([
      Storage().init(),
      // Get.putAsync<IMService>(() => IMService().init()),
    ]).whenComplete(() {
      Get.put<ConfigService>(ConfigService());
      Get.put<NoticeService>(NoticeService());
      Get.put<IMService>(IMService());
      Get.put<WPHttpService>(WPHttpService());
      Get.put<UserService>(UserService());
    });

    // Enable virtual display.
    if (Platform.isAndroid) {
      // WebView.platform = AndroidWebView();
    }
  }

  // 系统样式
  static void setSystemUi() {
    if (GetPlatform.isMobile) {
      // 屏幕方向 竖直上
      SystemChrome.setPreferredOrientations([DeviceOrientation.portraitUp]);
      // 透明状态栏
      SystemChrome.setSystemUIOverlayStyle(const SystemUiOverlayStyle(
        statusBarColor: Colors.transparent, // transparent status bar
        // systemNavigationBarDividerColor: Colors.transparent,
        // systemNavigationBarColor: Colors.transparent,
        // systemNavigationBarIconBrightness: Brightness.dark,
      ));
    }

    // if (GetPlatform.isAndroid) {
    //   // 去除顶部系统下拉和底部系统按键
    //   // SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual, overlays: []);
    //   // 去掉底部系统按键
    //   // SystemChrome.setEnabledSystemUIMode(SystemUiMode.manual,
    //   //     overlays: [SystemUiOverlay.bottom]);

    //   // 自定义样式
    //   SystemUiOverlayStyle systemUiOverlayStyle = const SystemUiOverlayStyle(
    //     // 顶部状态栏颜色
    //     // statusBarColor: Colors.transparent,
    //     // 该属性仅用于 iOS 设备顶部状态栏亮度
    //     // statusBarBrightness: Brightness.light,
    //     // 顶部状态栏图标的亮度
    //     // statusBarIconBrightness: Brightness.light,

    //     // 底部状态栏与主内容分割线颜色
    //     systemNavigationBarDividerColor: Colors.transparent,
    //     // 底部状态栏颜色
    //     systemNavigationBarColor: Colors.white,
    //     // 底部状态栏图标样式
    //     systemNavigationBarIconBrightness: Brightness.dark,
    //   );
    //   SystemChrome.setSystemUIOverlayStyle(systemUiOverlayStyle);
    // }
  }
}
